<?xml version="1.0" encoding="utf-8"?>
<!--
                                                                                     
 h       t     t                ::       /     /                     t             / 
 h       t     t                ::      //    //                     t            // 
 h     ttttt ttttt ppppp sssss         //    //  y   y       sssss ttttt         //  
 hhhh    t     t   p   p s            //    //   y   y       s       t          //   
 h  hh   t     t   ppppp sssss       //    //    yyyyy       sssss   t         //    
 h   h   t     t   p         s  ::   /     /         y  ..       s   t    ..   /     
 h   h   t     t   p     sssss  ::   /     /     yyyyy  ..   sssss   t    ..   /     
                                                                                     
	<https://y.st./>
	Copyright © 2016 Alex Yst <mailto:copyright@y.st>

	This program is free software: you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation, either version 3 of the License, or
	(at your option) any later version.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with this program. If not, see <https://www.gnu.org./licenses/>.
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<base href="https://y.st./en/weblog/2016/03-March/06.xhtml"/>
		<title>Disillusioned with onion addresses &lt;https://y.st./en/weblog/2016/03-March/06.xhtml&gt;</title>
		<link rel="icon" type="image/png" href="/link/CC_BY-SA_4.0/y.st./icon.png"/>
		<link rel="stylesheet" type="text/css" href="/link/main.css"/>
		<script type="text/javascript" src="/script/javascript.js"/>
		<meta name="viewport" content="width=device-width"/>
	</head>
	<body>
<nav>
	<p>
		<a href="/en/coursework/">Coursework</a> |
		<a href="/en/take-down/">Take-down requests</a> |
		<a href="/en/">Home</a> |
		<a href="/en/a/about.xhtml">About</a> |
		<a href="/en/a/contact.xhtml">Contact</a> |
		<a href="/a/canary.txt">Canary</a> |
		<a href="/en/URI_research/"><abbr title="Uniform Resource Identifier">URI</abbr> research</a> |
		<a href="/en/opinion/">Opinions</a> |
		<a href="/en/law/">Law</a> |
		<a href="/en/recipe/">Recipes</a> |
		<a href="/en/a/links.xhtml">Links</a> |
		<a href="/en/weblog/2016/03-March/06.xhtml.asc">{this page}.asc</a>
	</p>
	<hr/>
	<p>
		Weblog index:
		<a href="/en/weblog/memories">Memories</a> |
		<a href="/en/weblog/"><abbr title="American Standard Code for Information Interchange">ASCII</abbr> calendars</a> |
		<a href="/en/weblog/index_ol_ascending.xhtml">Ascending list</a> |
		<a href="/en/weblog/index_ol_descending.xhtml">Descending list</a>
	</p>
	<hr/>
	<p>
		Jump to entry:
		<a href="/en/weblog/2015/03-March/07.xhtml">&lt;&lt;First</a>
		<a rel="prev" href="/en/weblog/2016/03-March/05.xhtml">&lt;Previous</a>
		<a rel="next" href="/en/weblog/2016/03-March/07.xhtml">Next&gt;</a>
		<a href="/en/weblog/latest.xhtml">Latest&gt;&gt;</a>
			</p>
			<hr/>
</nav>
		<header>
			<h1>Disillusioned with onion addresses</h1>
			<p>Day 00365: <time>Sunday, 2016 March 06</time></p>
		</header>
<p>
	A thought just occurred to me.
	I no longer need to avoid mentioning <a href="ircs://sbuk7aqcxkoyipwv.onion:49152/">freenode</a> entirely when I write about things that have happened there.
	I just need to be sure to use the link to my own forwarding onion address when making such mentions.
	I still can&apos;t use this onion address to connect, as it would be identical to not using <a href="apt:tor"><abbr title="The Onion Router">Tor</abbr></a> to connect at all, but other people can without struggling with freenode&apos;s incomplete <abbr title="The Onion Router">Tor</abbr> blocks.
	Also, removed my relay to IRC2P, as it only serves to distract from <a href="https://opalrwf4mzmlfmag.onion/">wowaname</a>&apos;s relay, and instead decided to add as many <abbr title="The Onion Router">Tor</abbr>-blocking networks as I know of before being asked.
	They might be useful to someone, but someone may be too timid to ask.
	I know I would be.
	Each day, the plan was to try to add at least one <abbr title="Internet Relay Chat">IRC</abbr> network that&apos;s present in the default HexChat server list, until I reach the end of the list.
	I&apos;ve uninstalled <abbr title="Invisible Internet Project">I2P</abbr> from the server as well, as it no longer serves a purpose on that machine.
</p>
<p>
	I started testing <abbr title="Internet Relay Chat">IRC</abbr> servers and adding them to both my <a href="file:///etc/tor/torrc">torrc file</a> and my <abbr title="Extensible Hypertext Markup Language">XHTML</abbr> list of port that are forwarded, but I quickly found keeping them in sync to be bothersome.
	To fix this, I built a function that could parse a hidden service block from a <abbr title="The Onion Router">Tor</abbr> configuration file and format it as the list that I was after.
	I needed to be able to tell the parser which <abbr title="Uniform Resource Identifier">URI</abbr> scheme to use for a given item (<code>ircs:</code> or <code>irc:</code>), as well as make my parser generic enough to handle other use cases, so I included a comment syntax that tells it what scheme to use.
	Making it more generic also required that I remove some <abbr title="Internet Relay Chat">IRC</abbr>-specific information, but I have to reluctantly admit that the result looks a lot cleaner.
</p>
<p>
	That ended up being in vain though.
	I found a couple issues in <abbr title="The Onion Router">Tor</abbr> that prevent me from forwarding as many ports as I would like to.
	The first problem is that some of the domain names I&apos;m trying to forward to are supposedly unparseable, though I can&apos;t see anything wrong with the four domains that cause the issue.
	This error shows up in the error log: <q>Mar 06 21:56:58.930 [warn] Unparseable address in hidden service port configuration.</q>.
	After commenting out the offensive lines, I run into a bug: <q>*** Error in `tor&apos;: free(): invalid pointer: 0x00007fde87a055c0 ***</q>.
	This pointer error only happens if I forward several ports, and even then, there isn&apos;t stable number of forwarded ports.
	With few enough ports forwarded, the pointer error never occurs, and with enough forwarded, it always occurs.
	However, somewhere in the middle, the error only sometimes occurs.
	I can start <abbr title="The Onion Router">Tor</abbr>, it&apos;ll shut down because of that error, then I&apos;ll start it a second time and there&apos;ll be no problems.
	The only option that i can see is to comment out all the lines that haven&apos;t been requested and go back to only forwarding ports on demand.
	That way, I have the ports to spare when a new request is made and I&apos;m not wasting ports on services that people aren&apos;t even using.
	This experience has left me a bit disillusioned with onion addresses.
	If I can&apos;t even make use of all my ports like can be done with a <abbr title="Domain Name System">DNS</abbr> address, this really cuts down on their usefulness.
	I imagine this limitation applies to the sum total of ports forwarded by all onion addresses used by a given <abbr title="The Onion Router">Tor</abbr> instance, especially because it&apos;s caused by an error, so setting up extra hidden services wouldn&apos;t likely even help.
</p>
<p>
	On <a href="ircs://kitsune6uv4dtdve.onion:6697/%23Volatile">#Volatile</a>, z showed us an awesome website that is working to <a href="https://sci-hub.io/">free knowledge</a> from the clutches of those that would hide it behind pay walls.
	I&apos;m not sure how they operate, but it&apos;s wonderful to see such work being done.
</p>
<p>
	We went over to my mother&apos;s school to help her only to find out that she didn&apos;t want or need any help.
	So what was the point? We were there for three hours with nothing to do.
	Next time, I&apos;m bringing my laptop just in cast this sort of thing happens again.
	I could have been doing something productive with my time.
</p>
		<hr/>
		<p>
			Copyright © 2016 Alex Yst;
			You may modify and/or redistribute this document under the terms of the <a rel="license" href="/license/gpl-3.0-standalone.xhtml"><abbr title="GNU&apos;s Not Unix">GNU</abbr> <abbr title="General Public License version Three or later">GPLv3+</abbr></a>.
			If for some reason you would prefer to modify and/or distribute this document under other free copyleft terms, please ask me via email.
			My address is in the source comments near the top of this document.
			This license also applies to embedded content such as images.
			For more information on that, see <a href="/en/a/licensing.xhtml">licensing</a>.
		</p>
		<p>
			<abbr title="World Wide Web Consortium">W3C</abbr> standards are important.
			This document conforms to the <a href="https://validator.w3.org./nu/?doc=https%3A%2F%2Fy.st.%2Fen%2Fweblog%2F2016%2F03-March%2F06.xhtml"><abbr title="Extensible Hypertext Markup Language">XHTML</abbr> 5.2</a> specification and uses style sheets that conform to the <a href="http://jigsaw.w3.org./css-validator/validator?uri=https%3A%2F%2Fy.st.%2Fen%2Fweblog%2F2016%2F03-March%2F06.xhtml"><abbr title="Cascading Style Sheets">CSS</abbr>3</a> specification.
		</p>
	</body>
</html>

